/*
 * Copyright (c) Jack魏 2024 - 2024, All Rights Reserved.
 */

package cn.jackwei.yiyi.pojo.bean;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 系统用户登陆表
 * </p>
 *
 * @author Jack魏
 * @since 2024-07-25
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "系统用户登陆表")
@TableName("sys_login")
public class SysLogin implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * token值
     */
    private String token;

    /**
     * ip城市
     */
    private String ipCity;

    /**
     * 登陆ip
     */
    private String ip;

    /**
     * 浏览器
     */
    private String browser;

    /**
     * 操作系统
     */
    private String os;

    /**
     * 状态：1正常，2长时间未操作，-1正常退出，-2强制退出
     */
    private Integer status;

    /**
     * 过期时间
     */
    private LocalDateTime expireTime;

    /**
     * token刷新时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
}
